package com.bw.produce.domain.dto;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * @author lemon
 * @date 2024/11/14 22:21
 **/
public class ClassifyDTO {
    /***/
    private Long id;
    /**分类名称*/
    @NotBlank(message = "分类名称不能为空")
    private String classifyName;
    /**父级id*/
    @NotNull(message = "上级分类不能为空")
    private Integer parentId;
    /**级别*/
    private Integer level;
    /**排序*/
    @NotNull(message = "排序不能为空")
    private Integer classifyRank;

    /**数量单位*/
    @NotBlank(message = "数量单位不能为空")
    private String countUnit;
    /**是否显示*/
    @NotNull(message = "是否显示不能为空")
    private Boolean reveal;
    /**是否显示在导航栏*/
    @NotNull(message = "是否导航栏不能为空")
    private Boolean navigation;
    /**分类图标*/
    @NotBlank(message = "图标不能为空")
    private String classifyIcon;

    /**分类及其属性*/
    @NotNull(message = "属性不能为空")
    private List<Integer> typeWithProperty;
    /**关键词*/
    @NotBlank(message = "关键词不能为空")
    private String keyword;
    /**分类描述*/
    @NotBlank(message = "描述不能为空")
    private String description;


    @Override
    public String toString() {
        return "ClassifyDTO{" +
                "id=" + id +
                ", classifyName='" + classifyName + '\'' +
                ", parentId=" + parentId +
                ", level=" + level +
                ", classifyRank=" + classifyRank +
                ", reveal=" + reveal +
                ", navigation=" + navigation +
                ", classifyIcon='" + classifyIcon + '\'' +
                ", typeWithProperty=" + typeWithProperty +
                ", keyword='" + keyword + '\'' +
                ", description='" + description + '\'' +
                '}';
    }

    public String getCountUnit() {
        return countUnit;
    }

    public void setCountUnit(String countUnit) {
        this.countUnit = countUnit;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getClassifyName() {
        return classifyName;
    }

    public void setClassifyName(String classifyName) {
        this.classifyName = classifyName;
    }

    public Integer getParentId() {
        return parentId;
    }

    public void setParentId(Integer parentId) {
        this.parentId = parentId;
    }

    public Integer getLevel() {
        return level;
    }

    public void setLevel(Integer level) {
        this.level = level;
    }

    public Integer getClassifyRank() {
        return classifyRank;
    }

    public void setClassifyRank(Integer classifyRank) {
        this.classifyRank = classifyRank;
    }

    public Boolean getReveal() {
        return reveal;
    }

    public void setReveal(Boolean reveal) {
        this.reveal = reveal;
    }

    public Boolean getNavigation() {
        return navigation;
    }

    public void setNavigation(Boolean navigation) {
        this.navigation = navigation;
    }

    public String getClassifyIcon() {
        return classifyIcon;
    }

    public void setClassifyIcon(String classifyIcon) {
        this.classifyIcon = classifyIcon;
    }

    public List<Integer> getTypeWithProperty() {
        return typeWithProperty;
    }

    public void setTypeWithProperty(List<Integer> typeWithProperty) {
        this.typeWithProperty = typeWithProperty;
    }

    public String getKeyword() {
        return keyword;
    }

    public void setKeyword(String keyword) {
        this.keyword = keyword;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }
}
